﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

namespace Bes.Swsp.ToolBox
{
  public class ComUtility
  {
    public static void AddReference(object comObject)
    {
      if (comObject != null && Marshal.IsComObject(comObject))
      {
        IntPtr ptr = Marshal.GetIUnknownForObject(comObject);
        Marshal.GetObjectForIUnknown(ptr);
      }
    }

    public static int ReleaseComObject(object comObject)
    {
      if (comObject != null && Marshal.IsComObject(comObject))
      {
        return Marshal.ReleaseComObject(comObject);
      }
      else
      {
        return 0;
      }
    }
  }
}
